javascript"> /** * 前言: ES5中对象的属性名都是字符串, 容易造成重名, 污染环境 * Symbol: * 概念: ES6 // Symbol属性不能被 遍历 /** * 3: 内置Symbol值 * 除了定义自己使用的Symbol值以外,ES6
ES6提供的解决异步编程方案之一 * 2. Generator函数是一个状态机,内部封装了不同状态的数据 * 3. 用来生成遍历器对象 * 4.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * 1. 二进制与八进制数值表示法: 二进制用0b, 八进制用0o * 2. Number.isFinite(i) : 判断是否是有
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <button>测试1</button> <button>测试2</button> <button>测试3</button> </body> <script type="text/javascript"> /
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * Object.is(v1,v2) * 判断两个数据是是否完全相等 * Object.assign(ta
ES6创造了一种新的遍历命令for of循环,Iterator接口主要提供for of消费 * 工作原理: * 创建一个指针对象(遍历器对象),指向数据结构的起始位置
button> </body> <script type="text/javascript"> /** * 作用: 定义匿名函数 * 基本语法
代表了未来某个将要发生的事件(通常是一个异步操作) * 有了Promise对象,可以将异步操作以同步的流程表达出来,避免了层层嵌套的回调函数(俗称'回调地狱') * ES6
使用语法: let p = new Promise( (resolve,reject)=>{ //resolve 和reject是两个函数 }) p.then( ()=>{}, // 传入的resolve 使用语法:Promise.all([ p,p1,p2.... ]).then() 使用实例如下: const p1 = new Promise((resolve,reject)=>{ resolve(
使用语法: let p = new Promise( (resolve,reject)=>{ //resolve 和reject是两个函数 }) p.then( ()=>{}, // 传入的resolve 使用语法:Promise.all([ p,p1,p2.... ]).then() 使用实例如下: const p1 = new Promise((resolve,reject)=>{ resolve
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * emmm, 写Java的一看就懂 * 1. 通过class定义类/实现类的继承 * 2. 在类中通过const
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script> /** * const关键字 * 作用: * 定义一个常量 * 特点: * 不能修改 *
上篇文章《ES6新增语法(五)——Promise详解》我们介绍Promise,Promise一旦执行就无法暂停和取消,所以ES6引入了Generator函数,可以通过yield关键字,把函数的执行流程挂起 使用语法: function *name(){ ... yield; //需要暂停的时候加yield ... yield; ... } const p = name(); p.next() //调用函数 Generator函数优点 Generator函数是ES6提供的一种异步编程解决方案,解决了两大问题: 回调地狱 异步流控
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script> /** * 简化的对象写法 * 省略同名的属性值 * 省略方法的function */ let username = 'dance'
// console.log(age) // let age = '18' // 循环遍历加监听的意思是指,在循环中为按钮或者其他元素绑定事件,因为在ES6 之前是使用var定义的循环变量,没有自己的作用域,会出现问题,在ES6后使用let解决了这个问题,ES5中采用闭包解决 let btns = document.getElementsByTagName 的知识点比较多,并且对于ES发行来说具有划时代的意义,所以我就把ES6分为多个小结来写了,并且都是写成了代码块,这也是作者我的一个小细节吧,为什么不写成文档的形式呢,应为对于这种语法来说,虽然写成文档, 但是我确实不是很喜欢,我喜欢内容精髓,并且少的文章,这样我不用花多长时间,就可以每天进步一点点(仅仅是个人爱好,并不是说长的文章不好,我自己也写长篇大论) (作者憨憨的日常:最近接手一个项目里面就没有写ES6 以前的语法的,看的一脸懵,周六日恶补一下,ES6往后的技术点确实挺多的,要是不看的话别人写 你都看不懂的那种)
上篇文章《ES6新增语法(五)——Promise详解》我们介绍Promise,Promise一旦执行就无法暂停和取消,所以ES6引入了Generator函数,可以通过yield关键字,把函数的执行流程挂起 使用语法: function *name(){ ... yield; //需要暂停的时候加yield ... yield; ... } const p = name(); p.next() //调用函数 Generator函数优点 Generator函数是ES6提供的一种异步编程解决方案,解决了两大问题: 回调地狱 异步流控
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * 学Java的毫无难度 * Set 容器 : 无序不可重复的多个value的集合体 * Set()
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script> /** * 模板字符串 : 简化字符串的拼接 * 模板字符串必须使用 `` 包含 就是Tab上面的按键 * 变化的部分采用 ${key} 定义 *
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script> /** * 变量的解构赋值 * 理解: * 从对象或数组中提取数据,并赋值给变量(多个) * 对象的解构赋值: *
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> /** * 1. includes(str) : 判断是否包含指定的字符串 * 2. startsWith(str) : 判断是否以指定的字